/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package RRHH_MODELO;

import java.util.Properties;

import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class mail {
    
    String Apellido = "";
    String pass = "";
    String CI = "";
    
    String miCorreo = "rpaz@strasol.net";
    String miContraseña = "oracle123";
    String servidorSMTP = "mail.strasol.net";    
    String puertoEnvio = "25";
    String mailReceptor = "";
    String asunto = "";
    String empresa = "";

    public mail(String mailReceptor, String asunto,String CI, String pass, String Apellido,String empresa) {
        this.mailReceptor = mailReceptor;
        this.asunto = asunto+" "+empresa;
        this.Apellido = Apellido;
        this.pass = pass;
        this.CI = CI; 
        this.empresa=empresa;
        
        Properties props = new Properties();
        props.put("mail.smtp.user", miCorreo);
        props.put("mail.smtp.host", servidorSMTP);
        props.put("mail.smtp.port", puertoEnvio);
        props.put("mail.smtp.starttls.enable", "true");
        props.put("mail.smtp.auth", "true");
        props.put("mail.smtp.socketFactory.port", puertoEnvio);
        props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
        props.put("mail.smtp.socketFactory.fallback", "true");

        SecurityManager security = System.getSecurityManager();

        try {
            Authenticator auth = new autentificadorSMTP();
            Session session = Session.getInstance(props, auth);
            // session.setDebug(true);

            MimeMessage msg = new MimeMessage(session);
            msg.setText("Estimado Sr.(a)\n\n"+Apellido+"\n\n\t Le comunicamos que el registro en el sistema fue satisfactorio para ingresar ponga su usuario:"+CI+" y password:"+pass+"\n\n Atte.:\n\n Recursos Humanos\n"+empresa);
            msg.setSubject(asunto);
            msg.setFrom(new InternetAddress(miCorreo));
            msg.addRecipient(Message.RecipientType.TO, new InternetAddress(
                    mailReceptor));
            Transport tra = session.getTransport("smtp");
            tra.connect(servidorSMTP, miCorreo, miContraseña);
            if(tra.isConnected())
            {
                tra.sendMessage(msg,msg.getAllRecipients());
                tra.close();
            }            
            
        } catch (Exception mex) {
            mex.printStackTrace();
        }

    }

    private class autentificadorSMTP extends javax.mail.Authenticator {
        public PasswordAuthentication getPasswordAuthentication() {
            return new PasswordAuthentication(miCorreo, miContraseña);
        }
    }

    public String getMiCorreo() {
        return miCorreo;
    }

    public void setMiCorreo(String miCorreo) {
        this.miCorreo = miCorreo;
    }

    public String getMiContraseña() {
        return miContraseña;
    }

    public void setMiContraseña(String miContraseña) {
        this.miContraseña = miContraseña;
    }

    public String getServidorSMTP() {
        return servidorSMTP;
    }

    public void setServidorSMTP(String servidorSMTP) {
        this.servidorSMTP = servidorSMTP;
    }

    public String getPuertoEnvio() {
        return puertoEnvio;
    }

    public void setPuertoEnvio(String puertoEnvio) {
        this.puertoEnvio = puertoEnvio;
    }

}